Digital broadcast networks enable the unidirectional transmission of data such as audio, video, subtitling text, applications, etc. In broadcast networks, there is typically no return channel from the receiver to the transmitter and thus adaptive techniques cannot be employed. At present, there are several families of digital broadcast standards around the world. For instance, in Europe, Digital Video Broadcasting (DVB) standards have been adopted. In general, these standards define the physical layer and the data layer of the broadcast distribution system. The definition of the physical and data link layer depends on the transport medium, which can be for instance a satellite, cable, or terrestrial channel. Correspondingly, the family of DVB standards includes DVB-S and DVB-S2 for satellite transmission, DVB-C and DVB-C2 for cable transmission, DVB-T and DVB-T2 for terrestrial transmission, and DVB-H for terrestrial transmission to handheld devices.
The recent terrestrial digital broadcast standard DVB-T2 is an extended version of the widely used DVB-T standard. The specifications of these two standards can be found in Non Patent Literatures 1 and 2, respectively. Other than the DVB-T standard, the DVB-T2 standard introduces, for instance, the concept of physical layer pipes (PLP), provides new forward error correction schemes, modulation constellations, larger OFDM symbol sizes and more pilot configurations.
Video streams are typically encoded using a compression standard such as MPEG-2 or MPEG-4 part 10 (H.264) and encapsulated into an MPEG transport stream. Details on the MPEG transport stream (TS) can be found in Non Patent Literatures 3 and 4. These specifications define a mechanism for multiplexing and synchronization of audio, video and meta-data streams. In particular, the following functions are supported: (i) multiplexing of multiple streams in a constant bitrate stream, (ii) synchronization of the streams on decoding, and (iii) decoder buffer management.
In general, digital broadcast networks may carry multiple transport streams. Each transport stream may carry a multiplex of services (programs). Each service may be further composed of service components, which are transported in elementary streams.
For transmitting the coded stream of broadcast data over the broadcast network, the transport stream has a constant bitrate and may include several elementary streams such as audio, video, and data streams. The constant bitrate transport stream comprises fixed size packets carrying the data of the elementary streams and the signaling information necessary for identifying the programs and the program components within the transport stream. Such signaling data includes, for instance, program specific information (PSI) tables enabling the receiver/decoder to demultiplex the elementary streams. For instance, the MPEG transport stream specification defines a program association table (PAT) and a program mapping table (PMT). There is one PAT per transport stream multiplex. PAT provides the correspondence between each program, identified through a program number, and the packets carrying the PMT associated with that program. There is one PMT per program. The PMT provides the mapping between the program and its elementary streams and may contain program and elementary stream descriptors. In addition to the PSI tables defined by the transport stream specifications, further tables are defined by various digital broadcasting standards supporting transport streams. In the DVB family of standards they are referred to as system information (SI) tables. Some system information tables are mandatory in DVB standards, for instance, the network information table (NIT) conveying information regarding the digital broadcast network and the physical organization of the transport streams carried.
FIG. 1 illustrates the format of a transport stream packet 110. The transport stream packet 110 contains a 4-byte header 120 and a 184-byte payload 130. The 4-byte header 120 includes 8 bits for a synchronization sequence 121, one bit for a transport error indicator 122, one bit for a payload unit start indicator 123, one bit for transport priority 124, 13 bits for a packet identifier (PID) 125, 2 bits for transport scrambling control 126, 2 bits for adaptation field control 127, and 4 bits for a continuity counter 128.
The synchronization byte (sync byte) 121 is a fixed sequence of 8 bits with a value “01000111” (0x47). This sequence is used to detect the boundaries between packets in systems that have no other means of signaling them.
The transport error indicator 122 is typically set at the receiver by the demodulator when the error correction mechanism fails in order to indicate to the decoder that the packet is corrupt. The payload unit start indicator 123 indicates that a new packetized elementary stream packet or a PSI/SI table starts in that transport stream packet. The transport priority indicator 124 enables higher and lower priority packets to be distinguished among packets with the same packet identifier (PID).
The PID field 125 identifies the data source of the transport stream packet. Each transport stream packet may only carry data from a single elementary stream or PSI/SI table. Each elementary stream and PSI/SI table is uniquely associated with a PID. Thus, the PID field is used by the decoder to extract the PSI/SI tables and the desired elementary streams from the multiplexed transport stream. The PID values from 0x0000 to 0x000F are reserved. The PID value of 0x1FFF indicates NULL packets. The NULL packets are a special type of stuffing packets, which carry no data but are needed, for instance, for asynchronously multiplexing the elementary streams and PSI/SI tables into a constant-bitrate transport stream.
The transport scrambling control 126 signalizes whether and what kind of scrambling is applied. The adaptation field control 127 indicates whether there is an adaptation field and/or payload in the transport stream packet.
The continuity counter 128 is a transport stream packet sequence number. The value of the continuity counter is incremented for each transport stream packet with the same PID. The transport stream syntax allows the transmission of duplicated packets and the continuity counter enables the identification of such duplicated packets having the same PID by assigning to the duplicated packets the same continuity counter value. Here, the “duplicated packet” means a repetition of a previous packet with the same ID value. The continuity counter counts modulo 16, i.e., it rolls over to zero after reaching its maximum value 15.
In general, digital video broadcast networks may carry multiple transport streams. Each transport stream may carry a multiplex of digital video broadcast services (programs). Each service may be further composed of service components, which are transported in elementary streams wherein an elementary stream is identified by the packet identifier PID. All transport stream packets belonging to the same elementary stream have the same PID value. The broadcast service may be, for instance, a TV program, which may include one or more audio components and one or more video components. The multiple audio components may carry speech in different languages. Alternatively, the multiple audio components and the multiple video components may carry the same audio and video content respectively, but coded with different robustness levels.
The synchronization byte in the transport stream packet header is only transmitted in systems whose underlying layers do not have any means for distinguishing the boundaries between packets. However, in systems where such means are available, such as DVB-T2, the synchronization byte is not transmitted. In some other cases, further signaling fields may become redundant since they can be derived, for instance, from signaling information provided in the lower layers. Transmitting such signaling fields unnecessarily reduces the efficiency of the digital broadcast network.